package com.mdd.admin.service;

import com.mdd.admin.validate.commons.PageValidate;
import com.mdd.admin.validate.ListContractCreateValidate;
import com.mdd.admin.validate.ListContractUpdateValidate;
import com.mdd.admin.validate.ListContractSearchValidate;
import com.mdd.admin.vo.ListContractListedVo;
import com.mdd.admin.vo.ListContractDetailVo;
import com.mdd.common.core.PageResult;

/**
 * 新建合同扩展信息服务接口类
 * @author LikeAdmin
 */
public interface IListContractService {

    /**
     * 新建合同扩展信息列表
     *
     * @author LikeAdmin
     * @param pageValidate 分页参数
     * @param searchValidate 搜索参数
     * @return PageResult<ListContractListedVo>
     */
    PageResult<ListContractListedVo> list(PageValidate pageValidate, ListContractSearchValidate searchValidate);

    /**
     * 新建合同扩展信息详情
     *
     * @author LikeAdmin
     * @param id 主键ID
     * @return ListContractDetailVo
     */
    ListContractDetailVo detail(Integer id);

    /**
     * 新建合同扩展信息新增
     *
     * @author LikeAdmin
     * @param createValidate 参数
     */
    void add(ListContractCreateValidate createValidate);

    /**
     * 新建合同扩展信息编辑
     *
     * @author LikeAdmin
     * @param updateValidate 参数
     */
    void edit(ListContractUpdateValidate updateValidate);

    /**
     * 新建合同扩展信息删除
     *
     * @author LikeAdmin
     * @param id 主键ID
     */
    void del(Integer id);

}
